package com.yidu.hbats.dao;

import com.yidu.hbats.action.Time;
import com.yidu.hbats.model.AtsSchemeAthlete;
import com.yidu.utils.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface AtsSchemeAthleteMapper {


    /**
     *
     * @mbg.generated 2019-10-29
     */
    int deleteByPrimaryKey(Integer saId);

    /**
     *
     * @mbg.generated 2019-10-29
     */
    int insert(AtsSchemeAthlete record);

    /**
     *
     * @mbg.generated 2019-10-29
     */
    int insertSelective(AtsSchemeAthlete record);

    /**
     *
     * @mbg.generated 2019-10-29
     */
    AtsSchemeAthlete selectByPrimaryKey(Integer saId);

    /**
     *
     * @mbg.generated 2019-10-29
     */
    int updateByPrimaryKeySelective(AtsSchemeAthlete record);

    /**
     *
     * @mbg.generated 2019-10-29
     */
    int updateByPrimaryKey(AtsSchemeAthlete record);

    /**
     * 查询所有
     * @param atsSchemeAthlete
     * @param pages
     * @param time
     * @return
     */
    List<AtsSchemeAthlete> selectAll(@Param("atsSchemeAthlete") AtsSchemeAthlete atsSchemeAthlete, @Param("pages") Page pages, @Param("time") Time time);

    /**
     * 根据方案id查运动员
     * @param schemeId
     * @return
     */
    List<AtsSchemeAthlete> selectByIdone(int schemeId);
    /**
     * 查询总行数
     * @param atsSchemeAthlete
     * @param time
     * @return
     */
    int selectCount(@Param("atsSchemeAthlete") AtsSchemeAthlete atsSchemeAthlete, @Param("time") Time time);

    /**
     * 按条件查询
     * @param atsSchemeAthlete
     * @return
     */
    List<AtsSchemeAthlete> selectCheckAthlete(AtsSchemeAthlete atsSchemeAthlete);

    /**
     * 按方案id修改
     * @param schemeId
     * @return
     */
    int deleteBySchemeId(Integer schemeId);

    /**
     * 修改评论
     * @param atsSchemeAthlete
     * @return
     */
    int updateByExp(AtsSchemeAthlete atsSchemeAthlete);

    /**
     * 逻辑删除
     * @param atsSchemeAthlete
     * @return
     */
    int updateByPrimaryKeySelectivethree(AtsSchemeAthlete atsSchemeAthlete);
    int updateByPrimaryKeySelectiveFour(int schemeId);

    /**
     * 根据运动员外键 来改变查看状态
     * @param atsSchemeAthlete 返回一个对象
     * @return
     */
    int updateByPrimaryKeySelectiveZero(AtsSchemeAthlete atsSchemeAthlete);
}